A Load Balancing Strategy for Iterated Parallel Loop Scheduling
نویسندگان
چکیده
An eecient template for the implementation on distributed-memory multiprocessors of iterated parallel loops, i.e. parallel loops nested in a sequential loop, is presented. The template is explicitly designed to smooth unbalanced processor workloads deriving from loops whose iterations are characterized by highly varying execution times. Experiments conducted shows performance gains w.r.t. HPF-like language supports. 1 Introduction The eeective exploitation of parallel loops is the key to achieve considerable speedups in many scientiic compute-intensive applications. Data parallel languages such as HPF rely on user-provided directives to derive the distribution of data and on the owner computes rule 4] to determine static schedules of parallel loops from the provided data distribution. The choice of the best data distribution (blocking or cyclic) is currently up to programmers. Note that, for some non{uniform problems, it is impossible to nd a good distribution scheme if both a static data distribution and a static scheduling policy are adopted. In fact, one may need a blocking data distribution strategy to exploit locality, but also a cyclic data distribution to balance the workload among the processors. Our template 3] overcomes this strong limitation of data parallel languages. It relies upon a simple blocking data distribution to exploit locality, and combines static and dynamic policies to obtain well-balanced iteration schedules.
منابع مشابه
A Load Balancing Strategy for Iterated
An eecient template for the implementation on distributed-memory multiprocessors of iterated parallel loops, i.e. parallel loops nested in a sequential loop, is presented. The template is explicitly designed to smooth unbalanced processor workloads deriving from loops whose iterations are characterized by highly varying execution times. Experiments conducted shows performance gains w.r.t. HPF-l...
متن کاملLoad Balancing for Parallel Loops in Workstation Clusters
Load imbalance is a serious impediment to achieving good performance in parallel processing. Global load balancing schemes cannot adequately manage to balance parallel tasks generated from a single application. Dynamic loop scheduling methods are known to be useful in balancing parallel loops on shared-memory multiprocessor machines. However, their centralized nature causes a bottleneck even fo...
متن کاملA tool for a two-level dynamic load balancing strategy in scientific applications
This paper describes a dynamic load balancing tool intended for computational investigators who have little familiarity with programming for a message-passing environment. Motivated by the PAR DOALL directive available in some compilers for shared-memory systems, the tool is designed to simplify the manual conversion of sequential programs containing computationally intensive oneor two-dimensio...
متن کاملAn Incremental Parallel Scheduling Approach to Solving Dynamic and Irregular Problems
|Global parallel scheduling is a new approach for runtime load balancing. In parallel scheduling , all processors are cooperated together to schedule work. Parallel scheduling accurately balances the load by using global load information. As an alternative strategy to the commonly used dynamic scheduling, it provides a high-quality, low-overhead load balancing. This paper presents a parallel sc...
متن کاملRuntime Incremental Parallel Scheduling ( RIPS ) for Large - Scale Parallel
Runtime Incremental Parallel Scheduling (RIPS) is an alternative strategy to the commonly used dynamic scheduling. In this scheduling strategy, the system scheduling activity alternates with the underlying computation work. RIPS utilizes advanced parallel scheduling techniques to produce a low-overhead, high-quality load balancing and adapts to applications of nonuniform structures.
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 1996